iT邦幫忙

2023 iThome 鐵人賽

DAY 10
1
自我挑戰組

待業不頹廢系列 第 10

Day 10 . 欸 今天要幹嘛 - python 動態爬蟲的前置處理

  • 分享至 

  • xImage
  •  

行前提要

前面幾天主要學習靜態網頁爬蟲,今天來進階的"動態網頁爬蟲"
利用網上大大們的文章來學習 Selenium 的使用,並留下自己學習的痕跡。
今天先簡單列出需要的步驟,好好紀錄不同階段遇到的問題跟解決方式。

Selenium

要處理動態爬蟲,需要安裝 Selenium 以及瀏覽器驅動程序(WebDriver)。
Selenium 負責自動化瀏覽器的操作,WebDriver 則是用於控制瀏覽器的工具。
Selenium ,模擬一般消費者瀏覽的網頁的所有習性,
也因此爬蟲速度會較慢、同時也仰賴網速及消耗大量 cpu!

在處理靜態時,我們也經過安裝套件( requests 和 beautifulsoup4 )
在動態頁面處理上我們需要的是 Selenium 以及 WebDriver 的配對
我想拆五個階段來說

  1. 安裝 Selenium
    $ pip3 install selenium
    起頭程式碼會需要像這樣的導入

    from selenium import webdriver
    
  2. WebDriver 的選擇,瀏覽器版本先確認
    實作瀏覽器為 Chrome ,先確認自己 chrome 版本
    (菜雞如我,還真是我第一次接觸到要確認瀏覽器版本的步驟)

  3. 下載對應的 WebDriver
    這階段的操作,需至官網手動下載,並非指令處理!
    下載 Chrome WebDriver 的方式:一開始我只找到這個 Chrome WebDriver 下載頁面的資訊 :(偏古老)
    記得要先檢查過目前的瀏覽器版本!
    再去下載對應的 driver(之後也要適時更新版本以維護程式碼運行喔!)
    這是後來找到比較適合我版本的網址

  4. 安排路徑
    接續上面,將下載的 Driver 文件放在你的系統 PATH(或指定路徑)下,
    讓 Selenium 能夠在任何位置找到 ChromeDriver 的可執行文件。
    這裡有兩種方式可以設定:指令方式 or 圖形介面方式處理

  5. 編寫程式碼
    完成安裝和配置 ChromeDriver,接下來的步驟是編寫 Python 代碼,使用 Selenium 來控制 Chrome 瀏覽器進行動態網頁爬取或自動化操作。

以上五個要點算是想要使用 Selenium 的前置處理吧
拆得比較細,細細品嚐慢慢消化,大量資訊我會先暈
明天再來說說五個階段的詳細處理。

文獻參考

用 Python 匯入 Selenium 的方式,以及如何用mac 安裝 ChromeDriver
動態網頁爬蟲第一道鎖 — Selenium教學:如何使用Webdriver、send_keys(附Python 程式碼)


上一篇
Day 9 . 欸 今天要幹嘛 - 關於 enumerate()
下一篇
Day 11 . 欸 今天要幹嘛 - python 動態爬蟲 (上)
系列文
待業不頹廢30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言